/******************************************************************************/
/********************************** 文件相关 **********************************/
/******************************************************************************/

import dayjs from "dayjs";

/**
 * 根据url地址下载文件
 * @param {string} url  下载地址
 * @param {string} name  文件名称
 */
export function downloadByUrl(
  url: string,
  name: string = dayjs().format("YYYY-MM-DD")
) {
  const a = document.createElement("a");
  a.download = name;
  a.href = url;
  a.style.display = "none";
  a.click();
  a.remove();
}

/**
 * 根据 bufferData 下载文件
 * @param {Buffer} buffer  Buffer数据
 * @param {string} name  文件名称
 */
export function downloadByBuffer(buffer: Buffer, name?: string) {
  const blob = new Blob([buffer], {
    type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
  });
  const url = window.URL.createObjectURL(blob);
  downloadByUrl(url, name);
}

/**
 * 尝试导入多个文件路径的文件
 * @param filePaths 多个文件的路径
 * @returns
 */
// export function importFileFromPaths(paths: string[] = []) {
//   const preFix = "../../../";
//   return new Promise((resolve, reject) => {
//     import(paths[0])
//       .then(res => resolve(res))
//       .catch(err => {
//         import(paths[1]).then(res => resolve(res)).catch(err => reject(err));
//       });
//   });
// }
